"""
URL configuration for myproject project.

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/4.2/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  path('', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path,include,re_path
## 导入 rest_framework 的路由模块
from rest_framework.routers import DefaultRouter
# from app01 import views as app01_views
# from app01 import views as app01_views
from rbac import views as rbac_views
from rbac import updateAdminPermission as patchAdmin
from gitlabManage import gitlabRestful

route = DefaultRouter()
# route.register('users', app01_views.UserViewset, basename='basename_users')
route.register('rbac/user', rbac_views.UsersViewset, basename='rbac_user')
route.register('rbac/login', rbac_views.LoginViewset, basename='rbac_login')
route.register('rbac/patchadmin', patchAdmin.UpdateAdminPermission, basename='rbac_patchadmin')
route.register('gitlab/projects', gitlabRestful.gitlabProjects, basename='gitlab_projects')
route.register('gitlab/filediff', gitlabRestful.fileDiff, basename='gitlab_filediff')
route.register('gitlab/localfilediff', gitlabRestful.LocalFileDiff, basename='local_filediffup')
route.register('gitlab/asynctest', gitlabRestful.asyncExample, basename='gitlab_asynctest')
route.register('gitlab/repositorytree', gitlabRestful.repositoryTree, basename='repositoryTree')
route.register('gitlab/projecttree', gitlabRestful.projectTree, basename='projectTree')
route.register('gitlab/filediffdefaultfield', gitlabRestful.FileDiffDefaultFieldView, basename='FileDiffDefaultFieldView')
route.register('gitlab/tagmanager', gitlabRestful.tagManager, basename='tagManager')
route.register('gitlab/celeryexample', gitlabRestful.celeryExample, basename='celeryexample')
route.register('gitlab/createtag', gitlabRestful.tagCelery, basename='createtag')

urlpatterns = [
    path('admin/', admin.site.urls),
    # path('app01/', app01_views.index),
    re_path('^apis/', include(route.urls)),
    # path('api-auth/', include('rest_framework.urls'))
]
